Simple JSON থেকে Java Object তৈরি করা

Java Technologies - জ্যাকসন (Jackson) - JSON থেকে Java Object (Deserialization)
200

Jackson হল একটি জনপ্রিয় JSON প্রসেসিং লাইব্রেরি যা Java Object থেকে JSON এবং JSON থেকে Java Object রূপান্তরের জন্য ব্যবহৃত হয়। Jackson এর মাধ্যমে আপনি সহজেই JSON ডেটা থেকে Java Object তৈরি করতে পারবেন। এই প্রক্রিয়াটিকে বলা হয় deserialization, যেখানে JSON ডেটা Java Object এ রূপান্তরিত হয়।

এই গাইডে, আমরা Jackson ব্যবহার করে কীভাবে একটি Simple JSON থেকে Java Object তৈরি করা যায় তা দেখব।


Step 1: Jackson ডিপেনডেন্সি যোগ করা

Jackson লাইব্রেরি ব্যবহার করতে হলে প্রথমে আপনাকে এটি আপনার প্রোজেক্টে যোগ করতে হবে। আপনি যদি Maven বা Gradle ব্যবহার করেন, তবে নিচের ডিপেনডেন্সি যোগ করতে হবে।

Maven Dependency

<dependencies>
    <!-- Jackson Databind (JSON to Java Object and vice versa) -->
    <dependency>
        <groupId>com.fasterxml.jackson.core</groupId>
        <artifactId>jackson-databind</artifactId>
        <version>2.14.2</version> <!-- Latest version -->
    </dependency>
</dependencies>

Gradle Dependency

dependencies {
    implementation 'com.fasterxml.jackson.core:jackson-databind:2.14.2'  // Latest version
}

Step 2: Simple JSON String তৈরি করা

Jackson দিয়ে Java Object তৈরি করার জন্য প্রথমে একটি JSON স্ট্রিং তৈরি করতে হবে। নিচে একটি সিম্পল JSON স্ট্রিং এর উদাহরণ দেওয়া হলো:

{
    "firstName": "John",
    "lastName": "Doe",
    "age": 30
}

এই JSON স্ট্রিংটি আমরা Java Object এ রূপান্তর করব।


Step 3: Java Object তৈরি করা

ধরা যাক, আমরা একটি Person নামক Java ক্লাস তৈরি করতে যাচ্ছি যা এই JSON ডেটার সাথে মানানসই হবে। আমাদের Person ক্লাসে তিনটি ফিল্ড থাকবে: firstName, lastName, এবং age

Java Class তৈরি করা

public class Person {
    private String firstName;
    private String lastName;
    private int age;

    // Default constructor
    public Person() {}

    // Getters and Setters
    public String getFirstName() {
        return firstName;
    }

    public void setFirstName(String firstName) {
        this.firstName = firstName;
    }

    public String getLastName() {
        return lastName;
    }

    public void setLastName(String lastName) {
        this.lastName = lastName;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

Step 4: JSON থেকে Java Object তৈরি করা (Deserialization)

এখন আমরা Jackson এর ObjectMapper ক্লাস ব্যবহার করে JSON থেকে Person Java Object তৈরি করব।

Code Example: JSON থেকে Java Object তৈরি করা

import com.fasterxml.jackson.databind.ObjectMapper;

public class JacksonExample {
    public static void main(String[] args) {
        // JSON string
        String jsonString = "{\"firstName\":\"John\", \"lastName\":\"Doe\", \"age\":30}";

        // Create an instance of ObjectMapper
        ObjectMapper objectMapper = new ObjectMapper();

        try {
            // Convert JSON string to Java Object
            Person person = objectMapper.readValue(jsonString, Person.class);

            // Print the Java Object
            System.out.println("First Name: " + person.getFirstName());
            System.out.println("Last Name: " + person.getLastName());
            System.out.println("Age: " + person.getAge());

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

Explanation:

  • ObjectMapper: Jackson এর প্রধান ক্লাস যা JSON থেকে Java Object রূপান্তর এবং Java Object থেকে JSON রূপান্তর করতে ব্যবহৃত হয়।
  • readValue() method: JSON স্ট্রিংকে Java Object এ রূপান্তর করতে ব্যবহৃত হয়। এখানে Person.class প্যারামিটার হিসাবে দিয়ে আমরা JSON এর ডেটাকে Person ক্লাসের Java Object এ রূপান্তর করেছি।

Output:

First Name: John
Last Name: Doe
Age: 30

Step 5: Error Handling

যখন JSON ডেটা ভ্যালিড না থাকে বা Java Object এর সাথে মেলে না, তখন Jackson এক্সপেশন থ্রো করতে পারে। এই ধরনের ক্ষেত্রে আপনি try-catch ব্লক ব্যবহার করে এর error handling করতে পারেন, যেমন আমরা উপরে দেখেছি।


Step 6: Jackson Annotations ব্যবহার করা (Optional)

Jackson এর কিছু annotations রয়েছে যা আপনাকে serialization এবং deserialization কাস্টমাইজ করতে সাহায্য করে। উদাহরণস্বরূপ, আপনি JSON ফিল্ডের নাম কাস্টমাইজ করতে পারেন, বা কিছু ফিল্ডকে JSON থেকে বাদ দিতে পারেন।

Example: Jackson Annotations

import com.fasterxml.jackson.annotation.JsonProperty;

public class Person {
    @JsonProperty("first_name")
    private String firstName;

    @JsonProperty("last_name")
    private String lastName;

    private int age;

    // Getters and Setters
}

এখানে @JsonProperty অ্যানোটেশনটি JSON এর কীগুলিকে কাস্টমাইজ করে (যেমন, first_name এবং last_name)।


Jackson হল একটি অত্যন্ত শক্তিশালী লাইব্রেরি যা JSON থেকে Java Object এবং Java Object থেকে JSON রূপান্তর করতে ব্যবহৃত হয়। এই গাইডে, আমরা দেখেছি কীভাবে একটি সিম্পল JSON স্ট্রিং থেকে Java Object তৈরি করতে হয় Jackson লাইব্রেরি ব্যবহার করে। Jackson এর ObjectMapper এর মাধ্যমে আপনি JSON ডেটা সহজেই Java Object এ রূপান্তর করতে পারেন। এছাড়া, Jackson এর annotations এর মাধ্যমে আপনি আপনার JSON ডেটা কাস্টমাইজ করতে পারেন।

Content added By
Promotion
NEW SATT AI এখন আপনাকে সাহায্য করতে পারে।

Are you sure to start over?

Loading...